Jupyter notebook обладает множеством возможностей, которые облегчают проведение численных расчетов и оформление результатов. В настоящем документе дается обзор ряда полезных трюков.
In [1]:
# Часто одно вычисление можно реализовать несколькими способами,
# которые могу значительно отличаться временем работы.
# Чтобы оценить время работы используется команда %timeit.
# Нарпимер, оценим, сколько времени занимает инициализация массива нулями.
import numpy as np
%timeit a = np.zeros(10000)
%timeit a = np.empty(10000)
In [2]:
# Jupyter обладает интелектуальной системой отображения результатов вычислений.
# Результат последней команды автоматически выводится в ячейке.
# При необходимости можно сделать вывод несколько раз, для этого используется команда
# display пакета IPython.display.
display(1+2)
display("Hi!")
In [3]:
# Вывод ячейки можно обновлять, что можно использовать например
# для отображения прогресса вычислений.
import time
from IPython.display import display, update_display, ProgressBar, clear_output
bar = ProgressBar(100)
display(bar, display_id="bar")
for n in range(100):
bar.progress = n
update_display(bar, display_id="bar")
time.sleep(0.2)
clear_output()
print("Done")
In [6]:
# Jupyter может показывать графики непосредственно в документе, что достигается директивой
# %matplotlib inline
# и является поведением по умолчанию.
# Интересно, что также можно выводить интерактивные графики, как показано ниже.
%matplotlib notebook
import matplotlib.pyplot as plt
plt.plot(np.arange(10))
plt.show() # Эта команда нужна, чтобы скрыть перечень созданных matplotlib объектов.
In [ ]:
%gui wx
In [ ]: